'''
数据背景：某中学高一年级50名学生的数学期末考试成绩(满分150分)，成绩区间如下：80-90分5人、90-100分8人、100-110分12人、110-120分10
人、120-130分8人、130-140分5人、140-150分2人。绘制要求：以”成绩区间”为X轴，“人数”为Y轴，每个区间对应的矩形柱用橙色填充，柱与柱之间无
间隔，添加图表标题”高一年级数学成绩分布直方图”。分析目标：分析学生成绩的分布形态（如是否呈正态分布），找出成绩分布最集中的区间。
'''
import matplotlib.pyplot as plt
#1.准备数据
#成绩区间
bins=[80,90,100,110,120,130,140,150]
#人数
counts=[5,8,12,10,8,5,2]
#2.创建画布
plt.figure(figsize=(10,6),dpi=120)
#3.绘制直方图
plt.hist(
    bins[:-1],
    bins,
    weights=counts,
    color='orange',
    alpha=0.7,
    edgecolor='black',
    linewidth=0.5
)
#设置图表标题和标签
plt.title('高一年级数学成绩分布直方图',fontsize=16,fontweight='bold',pad=20)
plt.xlabel('成绩区间',fontsize=12)
plt.ylabel('人数',fontsize=12)
#设置图表网格
plt.grid(axis='y',linestyle=':',alpha=0.7)
# 4.避免乱码
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=False
# 5.显示图表
plt.tight_layout()
plt.show()
